package co.edu.usbcali.sgi.modelo.dto;

import co.edu.usbcali.sgi.modelo.Usuario;
import co.edu.usbcali.sgi.presentation.backEndBeans.UsuarioView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;


/**
*
*
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public class UsuarioDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    private String usuPass;
    private String estCod_Estado;
    private String perCedula_Persona;
    private String tuCod_TipoUsuario;
    private String usuCod;
    private boolean rowSelected = false;
    private UsuarioView usuarioView;
    private Usuario usuario;

    public Usuario getUsuario() {
        return usuario;
    }

    public String listener_update(ActionEvent e) {
        try {
            usuarioView.action_modifyWitDTO(
                ((usuPass == null) || usuPass.equals("")) ? null
                                                          : new String(usuPass),
                ((estCod_Estado == null) || estCod_Estado.equals("")) ? null
                                                                      : new String(
                    estCod_Estado),
                ((perCedula_Persona == null) || perCedula_Persona.equals(""))
                ? null : new String(perCedula_Persona),
                ((tuCod_TipoUsuario == null) || tuCod_TipoUsuario.equals(""))
                ? null : new String(tuCod_TipoUsuario));
            rowSelected = !rowSelected;
        } catch (Exception ex) {
            return "";
        }

        return "";
    }

    public void listener_cancel(ActionEvent e) {
        usuCod = usuario.getUsuCod().toString();
        usuPass = (usuario.getUsuPass() != null)
            ? usuario.getUsuPass().toString() : null;
        estCod_Estado = (usuario.getEstado().getEstCod() != null)
            ? usuario.getEstado().getEstCod().toString() : null;
        perCedula_Persona = (usuario.getPersona().getPerCedula() != null)
            ? usuario.getPersona().getPerCedula().toString() : null;
        tuCod_TipoUsuario = (usuario.getTipoUsuario().getTuCod() != null)
            ? usuario.getTipoUsuario().getTuCod().toString() : null;
        rowSelected = !rowSelected;
    }

    /**
    * <p>Bound to commandLink actionListener in the ui that renders/unrenders
        * the Customer details for editing.</p>
        */
    public void toggleSelected(ActionEvent e) {
        usuCod = usuario.getUsuCod().toString();
        usuPass = (usuario.getUsuPass() != null)
            ? usuario.getUsuPass().toString() : null;
        estCod_Estado = (usuario.getEstado().getEstCod() != null)
            ? usuario.getEstado().getEstCod().toString() : null;
        perCedula_Persona = (usuario.getPersona().getPerCedula() != null)
            ? usuario.getPersona().getPerCedula().toString() : null;
        tuCod_TipoUsuario = (usuario.getTipoUsuario().getTuCod() != null)
            ? usuario.getTipoUsuario().getTuCod().toString() : null;
        rowSelected = !rowSelected;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public UsuarioView getUsuarioView() {
        return usuarioView;
    }

    public void setUsuarioView(UsuarioView usuarioView) {
        this.usuarioView = usuarioView;
    }

    public String getUsuPass() {
        return usuPass;
    }

    public void setUsuPass(String usuPass) {
        this.usuPass = usuPass;
    }

    public String getEstCod_Estado() {
        return estCod_Estado;
    }

    public void setEstCod_Estado(String estCod_Estado) {
        this.estCod_Estado = estCod_Estado;
    }

    public String getPerCedula_Persona() {
        return perCedula_Persona;
    }

    public void setPerCedula_Persona(String perCedula_Persona) {
        this.perCedula_Persona = perCedula_Persona;
    }

    public String getTuCod_TipoUsuario() {
        return tuCod_TipoUsuario;
    }

    public void setTuCod_TipoUsuario(String tuCod_TipoUsuario) {
        this.tuCod_TipoUsuario = tuCod_TipoUsuario;
    }

    public String getUsuCod() {
        return usuCod;
    }

    public void setUsuCod(String usuCod) {
        this.usuCod = usuCod;
    }

    public boolean isRowSelected() {
        return rowSelected;
    }

    public void setRowSelected(boolean rowSelected) {
        this.rowSelected = rowSelected;
    }
}
